package kr.co.mustgo.domain.product;

public class ProductReference {
	private String productCode;	//상품 코드
	private String reservationCancelRate; //예약 취소료 규정
	private String touristInsurance; //여행자 보험
	private String reservationAttention; //예약시 유의사항
	private String emergencyTel; //긴급 연락처
	private String referenceQna; //질문과 답변
	private String minStartPeople; //최소 출발 인원 규정
	private String accountGuide; //결제 안내
	
	public ProductReference(){}

	public ProductReference(String productCode, String reservationCancelRate,
			String touristInsurance, String reservationAttention,
			String emergencyTel, String referenceQna, String minStartPeople,
			String accountGuide) {
		super();
		this.productCode = productCode;
		this.reservationCancelRate = reservationCancelRate;
		this.touristInsurance = touristInsurance;
		this.reservationAttention = reservationAttention;
		this.emergencyTel = emergencyTel;
		this.referenceQna = referenceQna;
		this.minStartPeople = minStartPeople;
		this.accountGuide = accountGuide;
	}

	@Override
	public String toString() {
		return "Product_Reference [productCode=" + productCode
				+ ", reservationCancelRate=" + reservationCancelRate
				+ ", touristInsurance=" + touristInsurance
				+ ", reservationAttention=" + reservationAttention
				+ ", emergencyTel=" + emergencyTel + ", referenceQna="
				+ referenceQna + ", minStartPeople=" + minStartPeople
				+ ", accountGuide=" + accountGuide + "]";
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result
				+ ((accountGuide == null) ? 0 : accountGuide.hashCode());
		result = prime * result
				+ ((emergencyTel == null) ? 0 : emergencyTel.hashCode());
		result = prime * result
				+ ((minStartPeople == null) ? 0 : minStartPeople.hashCode());
		result = prime * result
				+ ((productCode == null) ? 0 : productCode.hashCode());
		result = prime * result
				+ ((referenceQna == null) ? 0 : referenceQna.hashCode());
		result = prime
				* result
				+ ((reservationAttention == null) ? 0 : reservationAttention
						.hashCode());
		result = prime
				* result
				+ ((reservationCancelRate == null) ? 0 : reservationCancelRate
						.hashCode());
		result = prime
				* result
				+ ((touristInsurance == null) ? 0 : touristInsurance.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		ProductReference other = (ProductReference) obj;
		if (accountGuide == null) {
			if (other.accountGuide != null)
				return false;
		} else if (!accountGuide.equals(other.accountGuide))
			return false;
		if (emergencyTel == null) {
			if (other.emergencyTel != null)
				return false;
		} else if (!emergencyTel.equals(other.emergencyTel))
			return false;
		if (minStartPeople == null) {
			if (other.minStartPeople != null)
				return false;
		} else if (!minStartPeople.equals(other.minStartPeople))
			return false;
		if (productCode == null) {
			if (other.productCode != null)
				return false;
		} else if (!productCode.equals(other.productCode))
			return false;
		if (referenceQna == null) {
			if (other.referenceQna != null)
				return false;
		} else if (!referenceQna.equals(other.referenceQna))
			return false;
		if (reservationAttention == null) {
			if (other.reservationAttention != null)
				return false;
		} else if (!reservationAttention.equals(other.reservationAttention))
			return false;
		if (reservationCancelRate == null) {
			if (other.reservationCancelRate != null)
				return false;
		} else if (!reservationCancelRate.equals(other.reservationCancelRate))
			return false;
		if (touristInsurance == null) {
			if (other.touristInsurance != null)
				return false;
		} else if (!touristInsurance.equals(other.touristInsurance))
			return false;
		return true;
	}

	public String getProductCode() {
		return productCode;
	}

	public void setProductCode(String productCode) {
		this.productCode = productCode;
	}

	public String getReservationCancelRate() {
		return reservationCancelRate;
	}

	public void setReservationCancelRate(String reservationCancelRate) {
		this.reservationCancelRate = reservationCancelRate;
	}

	public String getTouristInsurance() {
		return touristInsurance;
	}

	public void setTouristInsurance(String touristInsurance) {
		this.touristInsurance = touristInsurance;
	}

	public String getReservationAttention() {
		return reservationAttention;
	}

	public void setReservationAttention(String reservationAttention) {
		this.reservationAttention = reservationAttention;
	}

	public String getEmergencyTel() {
		return emergencyTel;
	}

	public void setEmergencyTel(String emergencyTel) {
		this.emergencyTel = emergencyTel;
	}

	public String getReferenceQna() {
		return referenceQna;
	}

	public void setReferenceQna(String referenceQna) {
		this.referenceQna = referenceQna;
	}

	public String getMinStartPeople() {
		return minStartPeople;
	}

	public void setMinStartPeople(String minStartPeople) {
		this.minStartPeople = minStartPeople;
	}

	public String getAccountGuide() {
		return accountGuide;
	}

	public void setAccountGuide(String accountGuide) {
		this.accountGuide = accountGuide;
	}

}
